]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
StThemeNode: add a trivial-case short cut to all comparisons for equality
authorSimon McVittie <simon.mcvittie@collabora.co.uk>
Thu, 15 Nov 2012 15:16:12 +0000 (15:16 +0000)
committerSimon McVittie <simon.mcvittie@collabora.co.uk>
Thu, 15 Nov 2012 17:08:33 +0000 (17:08 +0000)
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687465
Reviewed-by: Jasper St. Pierre <jstpierre@mecheye.net>
src/st/st-theme-node.c

index 88002998282cd4ce9d1ba8de2bb2c65b506d3944..766e0733d07bf6f65a40a143e949916dbcf995e6 100644 (file)
@@ -341,6 +341,10 @@ gboolean
 st_theme_node_equal (StThemeNode *node_a, StThemeNode *node_b)
 {
   g_return_val_if_fail (ST_IS_THEME_NODE (node_a), FALSE);
+
+  if (node_a == node_b)
+    return TRUE;
+
   g_return_val_if_fail (ST_IS_THEME_NODE (node_b), FALSE);
 
   if (node_a->parent_node != node_b->parent_node ||
@@ -3548,6 +3552,10 @@ st_theme_node_geometry_equal (StThemeNode *node,
   StSide side;
 
   g_return_val_if_fail (ST_IS_THEME_NODE (node), FALSE);
+
+  if (node == other)
+    return TRUE;
+
   g_return_val_if_fail (ST_IS_THEME_NODE (other), FALSE);
 
   _st_theme_node_ensure_geometry (node);
@@ -3592,6 +3600,10 @@ st_theme_node_paint_equal (StThemeNode *node,
   int i;
 
   g_return_val_if_fail (ST_IS_THEME_NODE (node), FALSE);
+
+  if (node == other)
+    return TRUE;
+
   g_return_val_if_fail (ST_IS_THEME_NODE (other), FALSE);
 
   _st_theme_node_ensure_background (node);